package cn.mesmile.clickhouse.dao;

import lombok.Data;

import java.util.List;
import java.util.Map;

@Data
public class GeneralQueryParam {
	
	/**
	 * 表对应的pojo类
	 */
	private Class<?> queryClazz;
	
	/**
	 * 查询列
	 */
	private List<String> queryColumn;
	
	/**
	 * 查询条件 where 表达式 
	 * <p>不要写where</p>
	 * <p>传入的参数格式为:#{conditionParam.paramName}</p>
	 */
	private String conditionExp;
	
	/**
	 * 查询条件 where 表达式中的参数集
	 * <p>key:paramName</p>
	 */
	private Map<String, Object> conditionParam;
	
	/**
	 * 每页的数据条数
	 * <p>分页查询使用</p>
	 */
	private Integer pageSize;
	
	/**
	 * 页码
	 * <p>分页查询使用</p>
	 */
	private Integer pageNo;
	
	/**
	 * order by 表达式
	 * <p>格式:columnName asc|desc</p>
	 * <p>多个排序字段用逗号分隔</p>
	 */
	private String orderExp;

}